Add transform filter to filter formular.
authoroliskoli <oliskoli>
Wed, 1 Nov 2006 20:17:04 +0000 (20:17 +0000)
committeroliskoli <oliskoli>
Wed, 1 Nov 2006 20:17:04 +0000 (20:17 +0000)
win32/gui-2/filter.dfm
win32/gui-2/filter.pas

index c9967bf7398c43ac24f0fe57b6155f13b45a4adf..53766bae63bb5b12b1e91b62dcf0465a08a2644f 100644 (file)
Binary files a/win32/gui-2/filter.dfm and b/win32/gui-2/filter.dfm differ
index 7c4ab9a157390ba8e987caf3a30e20df35ff6e37..9b5b07614162f99c04ee0809755d9e1c73c04312 100644 (file)
@@ -1,7 +1,7 @@
 unit filter;\r
 \r
 {\r
-    Copyright (C) 2005 Olaf Klein, o.b.klein@gpsbabel.org\r
+    Copyright (C) 2005,2006 Olaf Klein, o.b.klein@gpsbabel.org\r
 \r
     This program is free software; you can redistribute it and/or modify\r
     it under the terms of the GNU General Public License as published by\r
@@ -81,10 +81,14 @@ type
     edWayptRadiusLat: TEdit;\r
     edWayptRadiusLon: TEdit;\r
     cbTrackRangeTimeZone: TCheckBox;\r
-    BitBtn2: TBitBtn;\r
+    btnHelp: TBitBtn;\r
     cbTrackFixes: TCheckBox;\r
     cbTrackCourse: TCheckBox;\r
     cbTrackSpeed: TCheckBox;\r
+    gbTransform: TGroupBox;\r
+    cobTransform: TComboBox;\r
+    cbTransform: TCheckBox;\r
+    cbTransformDelete: TCheckBox;\r
     procedure cbTrackTimeClick(Sender: TObject);\r
     procedure FormCreate(Sender: TObject);\r
     procedure cbTrackTitleClick(Sender: TObject);\r
@@ -101,7 +105,8 @@ type
     procedure FormShow(Sender: TObject);\r
     procedure FormKeyDown(Sender: TObject; var Key: Word;\r
       Shift: TShiftState);\r
-    procedure BitBtn2Click(Sender: TObject);\r
+    procedure btnHelpClick(Sender: TObject);\r
+    procedure cbTransformClick(Sender: TObject);\r
   private\r
     { Private-Deklarationen }\r
     lTrackTimeList: TList;\r
@@ -169,12 +174,21 @@ var
 begin\r
   TranslateComponent(SELF);\r
 \r
+  cobTransform.Items.Clear;\r
+  cobTransform.Items.Add(_('Waypoints') + ' -> ' + _('Routes'));\r
+  cobTransform.Items.Add(_('Routes') + ' -> ' + _('Waypoints'));\r
+  cobTransform.Items.Add(_('Routes') + ' -> ' + _('Tracks'));\r
+  cobTransform.Items.Add(_('Tracks') + ' -> ' + _('Routes'));\r
+  cobTransform.Items.Add(_('Waypoints') + ' -> ' + _('Tracks'));\r
+  cobTransform.Items.Add(_('Tracks') + ' -> ' + _('Waypoints'));\r
+  cobTransform.ItemIndex := 0;\r
+\r
   CurrentTime := SysUtils.Now;\r
   dtpTrackStartDate.DateTime := Int(CurrentTime);\r
   dtpTrackStopDate.DateTime := Int(CurrentTime);\r
 \r
   lTrackTimeList := TList.Create;\r
-  \r
+\r
   lTrackTimeList.Add(edTrackTimeDays);\r
   lTrackTimeList.Add(edTrackTimeHours);\r
   lTrackTimeList.Add(edTrackTimeMinutes);\r
@@ -231,8 +245,11 @@ begin
     cbTrackCourse.Enabled := False;\r
     cbTrackSpeed.Enabled := False;\r
   end;\r
-//LoadSettingsFromInifile();\r
+\r
   LoadSettingsFromRegistry();\r
+\r
+  gbTransform.Enabled := (common.gpsbabel_vfmt >= '001.003.002');\r
+  EnableAll(gbTransform, gbTransform.Enabled);\r
 end;\r
 \r
 function TfrmFilter.ValidateNumerical(AEdit: TCustomEdit; AMin, AMax: Extended): Boolean;\r
@@ -314,6 +331,21 @@ begin
 \r
   Result := '';\r
 \r
+  if gbTransform.Enabled and cbTransform.Checked then\r
+  begin\r
+    Result := Format('%s -x %s', [Result, 'transform,']);\r
+    case cobTransform.ItemIndex of\r
+      0: Result := Result + 'rte=wpt';\r
+      1: Result := Result + 'wpt=rte';\r
+      2: Result := Result + 'trk=rte';\r
+      3: Result := Result + 'rte=trk';\r
+      4: Result := Result + 'trk=wpt';\r
+      5: Result := Result + 'wpt=trk';\r
+    end;\r
+    if cbTransformDelete.Checked then\r
+      Result := Result + ',del=y' else\r
+      Result := Result + ',del=n';\r
+  end;\r
   if AnyChecked(gbWaypoints) then\r
   begin\r
     if cbWayptMergeDups.Checked and\r
@@ -561,9 +593,9 @@ begin
   ModalResult := mrCancel;\r
 end;\r
 \r
-procedure TfrmFilter.BitBtn2Click(Sender: TObject);\r
+procedure TfrmFilter.btnHelpClick(Sender: TObject);\r
 begin\r
-  WinOpenURL(readme_html_path + '#filters');\r
+  WinOpenURL(readme_html_path + '#Data_Filters');\r
 end;\r
 \r
 procedure TfrmFilter.LoadSettingsFromInifile();\r
@@ -693,4 +725,9 @@ begin
   end;\r
 end;\r
 \r
+procedure TfrmFilter.cbTransformClick(Sender: TObject);\r
+begin\r
+  cobTransform.Enabled := cbTransform.Checked;\r
+end;\r
+\r
 end.\r